Method and devices for routing a message to a network server in a server pool

ABSTRACT

Method, devices, and computer programs for routing a message to a first network server (MSC 1 ) in a server pool (CNSP) of a mobile communication system are disclosed. The mobile communication system comprises a controller (BSC 2 ) of an access network (AN) connectable to the first network server (MSC 1 ) and at least one further network server (MSC 2 ) in the server pool (CNSP), wherein service points are defined (S 100 ) and one or more of the service points are allocated (S 110 ) uniquely to each of the network servers (MSC 1 ), MSC 2 ) in the server pool (CNSP). At least one of the network servers (MSC 1 , MSC 2 ) has allocated (S 110 ) at least two of the service points. A temporary identity is assigned (S 150 ) by the first network server (MSC 1 ) to a mobile device (MS). The temporary identity includes a selected service point which is selected (S 140 ) from the one or more service points allocated to the first network server (MSC 1 ). The temporary identity is transmitted (S 160 ) to the mobile device (MS) and a message (S 170 ) from the mobile device (MS) to the first network server (MSC 1 ) is routed (S 200 ) to the first network, server (MSC 1 ) by extracting the selected service point from the temporary identity received by the mobile device (MS) and applying a routing algorithm to the selected service point. The routing algorithm reveals the first network server (MSC 1 ) from an analysis of the selected service point.

TECHNICAL FIELD OF THE INVENTION

[0001] The present invention relates to the field of mobilecommunication systems, especially to a method for routing of a messageto a network server in a server pool. Devices and computer programsembodying the invention are also described.

BACKGROUND OF THE INVENTION

[0002] For identifying a subscriber in a mobile communication systemlike the Global System for Mobile Communication (GSM) or the UniversalMobile Telecommunication System (UMTS), an International MobileSubscriber Identity (IMSI) is allocated uniquely and permanently to eachsubscriber. The IMSI is a number related to all network relatedsubscriber information and is stored in the Subscriber Identity Module(SIM) that is located in a mobile device like a mobile phone of thesubscriber. In addition, the IMSI is stored by a network server like theHome Location Register (HLR) and the serving Visitor Location Register(VLR). Unprotected transmission of the IMSI over the air interfacebetween the mobile device and the radio access network should be kept asseldom as possible to prevent misuse, e.g. to prevent an eavesdropperfrom accessing the IMSI for relating calls non-ambiguously to thesubscriber or to establish unauthorized roaming profiles of thesubscriber.

[0003] Protection is introduced into the mobile communication systemusing temporary identities whenever possible. These identities arealiases of the IMSI and are changed from time to time with typicallylocal significance. Examples for such temporary identities are theTemporary Mobile Subscriber Identity (TMSI) used for circuit-switched(CS) connections and the Packet TMSI (P-TMSI) for packet switched (PS)connections.

[0004] A mobile device registered to the mobile communication system isassigned a temporary identity by a network server like a Mobile serviceSwitching Center (MSC) assigning the TMSI or a Serving General packetradio system Support Node (SGSN) assigning the P-TMSI. Depending on theconfiguration of the mobile communication system, an assignment of thetemporary identity can be triggered by the registration of the mobiledevice to the network server, by a call attempt, a service activation,or a location update, which is issued when the mobile device changes itslocation area (LA) for CS connections or routing area (RA) for PSconnections. The change of the LA or RA can be indicated to the networkserver by a change of a LA identity (LAI) or a RA identity (RAI)indicating the LA or RA, respectively. Other procedures triggering theassignment of a temporary identity are an expired or invalid temporaryidentity received by the network server.

[0005] The temporary identity as defined for GSM or UMTS is a numbercomprising predefined number blocks indicating a domain and a TMSInumber. The so defined temporary identity has a bit length of 32 bit andis sometimes also named TMSI-Code (TIC). The number block representingthe domain indicates whether the mobile device is registered in the CSor PS domain. According to the present definition, the first two bitsare reserved for the number block domain. The temporary identity issometimes used according to the TIC supplemented by a number blockreserved for the LAI or the RAI for TMSI or P-TMSI, respectively. Alsoother implementations of the temporary identities exist, e.g. in somesystems a TMSI generation may be included in the TIC for furtherassigning of already assigned TMSI numbers.

[0006] The 3GPP standard TS 29.002 v.4.2.1 (2000-12), chapter 8.1.4, formobile communication systems allows to assign the temporary identity ona per network server base, i.e. each assigned temporary identity has tobe unique for each network server. 3GPP standard TS24.008 v4.1.1(2001-01), chapter 4.3.1 and chapter 9.2.15, for mobile communicationssuggests to assign the temporary identity on a per LA/RA-base, whereinthe network server assigning the temporary identity considers alsolocation information like the LAI or RAI and the temporary identity fora mobile device has to be unique within each LA or RA controlled by thenetwork server, i.e. the same temporary identity that is assigned to amobile device in a first LA of the network server can be assigned in asecond LA of the network server for a further mobile device at the sametime. Referring to the availability of temporary identities, i.e. themaximum number of possible combinations of temporary identities that canbe assigned, the assignment on a per LA/RA base is favorable. For anassignment on a per network server base, the availability is limited bythe number of combinations defined by the bit length of the TMSI number.Typically more than one LA or RA per network server exist and theavailability of temporary identities for an assignment on a per LA/RAbase is therefore much higher just because of the higher number ofLA/RAs per network server.

[0007] The introduction of a core network server pool, in the followingnamed server pool, provides more flexibility to the mobile communicationsystem. In the server pool, many network servers are grouped such that amobile device can register to and can be controlled by any of thenetwork servers in the pool. The grouping can be achieved by connectinga controller of the access network with the network servers in theserver pool such that the controller is connected to each network serverin the server pool. Typically, there are many controllers in the accessnetwork that are connected to the network servers as described before.The server pool is especially advantageous in situations wherein anetwork server in the server pool fails, is overloaded, or reveals otherdisturbances. For such situations, the mobile device can be registeredto and controlled by a further network server in the server pool thusimproving resilience of the mobile communication system with server poolcompared to the mobile communication system without server pool, i.e. amobile communication system wherein each controller is connected to onenetwork server only.

[0008] Owing to the fact that for a server pool one controller isconnected to multiple network servers, the routing of messages from amobile device to the network server the mobile device is registered inbecomes more difficult. A server identifier is proposed to identify thenetwork server in the server pool for routing a message from a mobiledevice. During registration of the mobile device to a first server ofthe server pool, the first server sends its server identifier to themobile device. Messages from the mobile device to the first networkserver can be routed to the first network server by analyzing the serveridentifier in a controller of an access network the mobile device isattached to. According to the document Introducing flexibility to the luinterface, TSG-RAN Working Group Meeting #16, Windsor, UK, 16.-20.October, 2000, Agenda Item 12 a), TSGR3#16(00)2586, the serveridentifier is proposed to be a part of the TMSI, e.g. the serveridentifier is included into the temporary identity. The serveridentifiers are allocated such that each network server has exactly oneserver identifier. A relation between the server identifiers and thenetwork servers in the server pool can be used to identify the networkserver from the server identifier comprised in the messages from themobile device for routing the messages to the network server.

[0009] The introduction of the server identifier is essential for theimplementation of the server pool into the mobile communication system,because it provides a way to identify the network server for messagesfrom the mobile device to the network server where the mobile device isregistered. However, for the preferred implementation that the serveridentifier is included into the temporary identity, the availability oftemporary identities is reduced when the number of network servers inthe server pool is less than the number of server identifiers. Thenumber of server identifiers is given by the value according to the bitlength of the number block that is reserved within the temporaryidentity for including the server identifier. For example, a numberblock of 5 bit reserved for the server identifier relates to a maximumpossible number of 2=32 network servers in the server pool. For thecase, that the network servers in the server pool do not equal themaximum possible number of network servers, i.e. when less than 32network servers are in the server pool, the fraction of the number ofserver identifiers exceeding the number of network servers in the serverpool remains unused. Following the present example, a server pool with 6network servers and 5 bit reserved for the server identifiers leads to asituation where 6 server identifiers are used for identifying uniquelythe network serves in the server pool whereas 24 server identifiers areleft unused. The same fraction of server identifiers that is left unuseddetermines the reduction of the availability of the temporary identitiesin the server pool. Following the present example, 6/32 of the temporaryidentities can be assigned and 24/32 are excluded from being assigned.Only for the special case that 32 network servers are in the serverpool, the maximum availability of temporary identities can be achieved.

[0010] In summary, the maximum availability can be only achieved whenthe number of network servers in the server pool equals the number ofserver identifiers defined by the bit length of the number blockreserved for the server identifier. However, this limitation is notacceptable for an operator of a mobile communication system due tocapacity and economic reasons.

SUMMARY OF THE INVENTION

[0011] It is an object of the present invention to provide an improvedmethod, devices and computer programs loadable into devices that providean optimized availability of temporary identities in a server pool of amobile communication system.

[0012] This object is achieved by the method as described in claim 1.Furthermore, the invention is embodied in devices as described in theclaims 17 and 19 and computer programs loadable into devices asdescribed in the claims 21 and 22. Advantageous embodiments aredescribed in the further claims.

[0013] In the proposed method, a message is routed to a first networkserver in a server pool of a mobile communication system. The mobilecommunication system comprises at least one controller of an accessnetwork. The controller is connectable to the first network server andat least one further network server in the server pool. In the serverpool, service points are defined. The definition of the service pointsdetermines a number of service points. Preferably, the number ofservices points is related to the number of network servers in theserver pool and the number of service points exceeds the number ofnetwork servers operating in the server pool. The definition of servicepoints may be achieved by determining a number block reserved for theservice points. The bit length of the number block accordinglydetermines the number of service points. The definition of the servicepoints can comprise also the determination of the position of the numberblock reserved for the service points in a temporary identity. Theservice points may be preferably defined when the server pool isconfigured, e.g. by the operator of the mobile communication system viaOperation and Maintenance (O&M). The definition may vary from operatorto operator or may vary from server pool to server pool.

[0014] Furthermore, one or more of the service points that are definedfor the server pool are allocated uniquely to each of the networkservers in the server pool, i.e. each allocated service point isallocated in a one-to-one relation to one of the network servers.Preferably, all service points that are defined are allocated to thenetwork servers operating in the server pool. Independent from thenumber of service points and the number of network servers in the serverpool, there is in any case at least one network server of the networkservers in the server pool that has allocated at least two of theservice points. As for the definition of service points, the allocationof the service points may also be achieved via O&M.

[0015] Definition and allocation of service points can be seen as stepsfor a configuration of the server pool and are prerequisites for therouting procedure described in the following three paragraphs. Therouting procedure is typically carried out more often than the steps forthe configuration.

[0016] A temporary identity is assigned by the first network server to amobile device, e.g. when the mobile device is registered to the firstnetwork server or for a location update. The temporary identity includesa selected service point. The selected service point is selected fromthe one or more service points allocated to the first network server.The one or more service points allocated to the first network server area subset of the service points that are allocated to the network serversin the server pool. The selected service point is one service point ofthe subset and identifies uniquely the first network server.

[0017] The temporary identity that is assigned by the first networkserver is transmitted to the mobile device. The mobile device preferablystores the received temporary identity.

[0018] A message from the mobile device to the first network server isrouted to the first network server. The routing is achieved by firstextracting the selected service point from the temporary identityreceived by the mobile device. Secondly, a routing algorithm is appliedto the selected service point. The routing algorithm reveals the firstnetwork server from an analysis of the selected service point, e.g.using the selected service point as input into the routing algorithm,the routing algorithm reveals as output an address of the first networkserver the selected service point is allocated to.

[0019] The proposed method for routing of messages to a network serverin a server pool optimizes the availability of temporary identities,because all of the service points that are defined by a number block inthe temporary identity can be allocated to the network servers in theserver pool. If all service points that are defined are allocated, noservice points are left unused, i.e. the number block reserved for theservice points is fully available for the assignment of temporaryidentities. In this case, the maximum availability of temporaryidentifies is achieved and all temporary identities can be assigned.Also for the case, that not all service points that are defined areallocated, the proposed method ensures that the availability oftemporary identities is optimized. The reason is that the number ofallocated service points exceeds the number of network servers operatingin the server pool and the number block reserved in the temporaryidentity for the service points can be used more efficiently compared toprior art thus leaving less temporary identities unused. The number ofexcess service points, i.e. the difference between the number of theservice points that are defined and the number of network servers in theserver pool, can be adjusted by the bit length of the number blockreserved for the service points. A slightly higher number of servicepoints is easier to handle and to maintain while a significantly highernumber provides more flexibility such that particularities likedifferent performances or capacities of individual network servers inthe server pool can be addressed more adequately, e.g. the excessservice points can be allocated in order to assign further temporaryidentities to network servers that have more capacity to control mobiledevices than other network servers in the server pool. Furthermore, theproposed method overcomes the limitation that the number of networkservers directly determines the availability of temporary identities.Instead, any number of network servers less than the number of servicepoints can be chosen in the server pool while a maximum availability oftemporary identities can be achieved.

[0020] According to a preferred embodiment, the routing algorithm isapplied by the controller of the access network. This implementation ofthe method is advantageous compared to a possible alternative byapplying the routing algorithm by the mobile device itself. Thisalternative may not be preferred just because mobile devices thatregister to the server pool have to be provided with the routingalgorithm and may have to be modified for executing the routingalgorithm.

[0021] According to another preferred embodiment, the routing algorithmutilizes a table, which relates the allocated service points with thenetwork servers in the server pool. The routing algorithm can search thetable for an entry for the selected service point. The detected entryreveals the network server the selected service point is allocated to,i.e. the first network server according to the present notation. Fromthe knowledge of the first network server, the routing algorithm mayretrieve an address of the first network server from a separate columnof the table or a separate table correlating the network servers in theserver pool with the addresses of the network servers. Alternatively,the table utilized by the routing algorithm comprises the allocatedservice points uniquely related to the addresses of the network servers.For both alternatives, the routing algorithm outputs the address of thefirst network server from the selected service point. The message fromthe mobile device to the first network server can be subsequently routedto said address revealed from the routing algorithm.

[0022] According to another preferred embodiment, the temporary identitycan be included in the message from the mobile device and the controllercan extract the selected service point from the temporary identity. Thisprocedure is advantageous, because the mobile device does not have toprocess the temporary identity received from the first network server.When sending a message, the mobile device can retrieve the temporaryidentity from its storage and include the temporary identity into themessage. The controller receiving the temporary identity can extract theselected service point comprised in the received temporary identity forapplying the routing algorithm. The proposed procedure is fullycompliant with the processing of temporary identities by mobile devicesin present mobile communication systems such that mobile devices doesnot have to changed for implementing the proposed method.

[0023] According to another preferred embodiment, the mobile device canextract the selected service point from the temporary identity and sendthe selected service point to the controller for applying the routingalgorithm. This procedure may require a modification of existing mobiledevices, but may be favorable in order to save processing effort at thecontroller for extracting the selected service point from the temporaryidentity. This embodiment may be especially helpful in situations whenmany messages from many mobile devices have to be routed by thecontroller at the same time.

[0024] According to another preferred embodiment, the number of servicepoints is defined by selecting a bit length of a number block reservedfor the service points in the temporary identity. The number of servicepoints may have to be changed when the number of network serversapproaches the number of service points or when more excess servicepoints are needed to address more adequately inhomogeneities in theserver pool. As an example, if one of the network servers in the serverpool is replaced by a new network server having significantly morecapacity than the other network servers in the server pool, the operatormay change the bit length of the number block reserved for the servicepoints in order to create more excess service points. According to thepresent example, the new network server may have allocated asignificantly higher number of service points than the other networkservers in the server pool. For a change of the number of servicepoints, the operator may select a new bit length of the number blockreserved for the service points in the temporary identity. Especiallythe steps associated with the selection of the selected service point,the assignment of the temporary identity with included selected servicepoint, the extraction of the selected service point, the routingalgorithm, and optionally the table utilizable by the routing algorithmmay have to be modified to be capable to process a service point withchanged bit length.

[0025] According to another preferred embodiment, the service points arere-allocatable to the network servers in the server pool. The number ofservice points allocated for each network server may be changedproviding more flexibility to the server pool, e.g. in order toaccommodate for particularities of the network servers in the serverpool or after a redefinition of the service points. After reallocationof one or more service points, the routing algorithm may have to beadapted for routing a message comprising one of the one or morereallocated service points.

[0026] According to another preferred embodiment, the service points canbe allocated depending on a load of at least one of the network serversin the server pool. As an example, one or more service points that aredefined but not already allocated can be allocated depending on theload. Or already allocated service points may be reallocated dependingon the load. Or allocated service points may be removed from at leastone of the network servers depending on the load. The load of a networkserver can be a utilization of a network server and may be supervised inan O&M center of the network operator. As a measure for the load, thenumber of temporary identities that are assigned by a network server tomobile devices can be used. If the number of assigned temporaryidentities comes close to the availability of temporary identities ofthe network server, one or more further service points may be allocatedvia O&M to the network server for increasing the availability oftemporary identities of that network server. After the allocation, thenetwork server can assign temporary identities including one of the oneor more further service points. Consequently, the routing algorithm hasto be updated for routing messages comprising one of the one or morefurther service points to the network server. The allocation dependingon the load can be achieved statically or dynamically. An example for astatic allocation is to use predefined settings, e.g. according toexpected traffic patterns for certain day times or weekly days likeworking days and weekend in order to balance subscriber behavior andnetwork performance. Dynamic allocation can be achieved by monitoringthe load of one or more network servers and adjusting the number ofservice points accordingly.

[0027] According to another preferred embodiment, the service points canbe allocated depending on a load of a link between the controller of theaccess network and one of the network servers in the server pool. Thisis especially advantageous if the number of mobile devices controllableby a particular network server is not limited by the capacity of theparticular network server itself but by the capacity of the link betweenthe particular network server and the controller. A congestion of thelink can be avoided by adapting the number of allocated service pointsto the capacity of the link. In addition, the link may carry alsofurther traffic. The number of server points allocated to the particularnetwork server may be adapted according to the load of the linkassociated with the number of mobile devices and the amount of thefurther traffic, i.e. more server points are allocated for lower furthertraffic and less are allocated for higher further traffic.

[0028] According to another preferred embodiment, the first networkserver can select the selected service point from the one or moreservice points allocated to the first network server. The first networkserver may select the selected service point randomly or depending onthe utilization of the one or more service points allocated to the firstnetwork server. Alternatively, the controller may select the selectedservice point introducing even more flexibility into the server pool.The drawback is that due to the much higher number of controllerscompared to network servers, the installation effort and maintenanceeffort is much higher.

[0029] According to another preferred embodiment, the temporary identitycan be assigned based on location information of the mobile device. Thislocation information can be the LAI or RAI of the mobile device for PSand CS domain, respectively. The network server assigning the temporaryidentity can analyze the LAI or RAI and can select one of the one ormore service points that are allocated to the network server dependingon the result of the analysis.

[0030] According to another preferred embodiment, the service points arecore network server pool service points or location area service points.Core network server pool service points are service points that aredefined on a per network server base. A core network server pool servicepoint identifies a service point within each server pool that can beused by any of the network servers of the server pool. The same networkserver can make use of more than one core network server pool servicepoint, but two different network servers cannot make use at the sametime of the same core network server pool service point. Location areaservice points are service points that are defined on a per LA/RA base.A location area service point identifies a service point within eachLA/RA that can be used by any of the network servers in the server pool.The same network server can make use of more than one location areaservice point, but two different network servers cannot use the samelocation area service point. For indicating the LA or RA of the mobiledevice to the network server, the LAI or RAI, respectively can be used.Temporary identities assigned on a per network server base are uniquefor each network server while temporary identities assigned on a perLA/RA base are unique for each LA or RA.

[0031] According to another preferred embodiment, the network servers inthe server pool are mobile service switching centers (MSCs) or servinggeneral packet radio service support nodes (SGSNs).

[0032] According to another preferred embodiment, the temporary identityis a temporary mobile subscriber identity (TMSI) or a packet temporarymobile subscriber identity (P-TMSI). Preferably, a number block reservedfor the service points is defined in the TMSI or P-TMSI while keepingthe bit length of the TMSI or P-TMSI constant. Preferably, also thenumber block domain remains unchanged ensuring that at least mobiledevices do not have to be modified with respect to the number blockdomain.

[0033] According to another preferred embodiment, the controller of theaccess network is a Base Station Controller (BSC) or a Radio NetworkController (RNC).

[0034] According to another preferred embodiment, the mobilecommunication system is a global system for mobile communication (GSM)or a universal mobile telecommunication system (UMTS).

[0035] Correlatively, the present invention also concerns devices forexecuting the proposed method. The devices can be adapted to allembodiments of the method as described above.

[0036] A network server exists in a server pool of a mobilecommunication system. The network server is connectable to a controllerof an access network and the network server has allocated at least twoservice points that uniquely identify the network server in the serverpool. The network server comprises a receiver, a transmitter, and aprocessing unit, wherein the receiver is adapted to receive a requestfor an assignment of a temporary identity for a mobile device. Therequest for an assignment of a temporary identity may origin from alocation update of the mobile device or a registration of the mobiledevice to the network server. The processing unit is adapted to assignthe temporary identity and to include one selected service point intothe temporary identity. The selected service point is selected from thetwo or more service points allocated to the network server. Thetransmitter is adapted to send the assigned temporary identity to themobile device.

[0037] A controller of an access network exists in a mobilecommunication system. The controller is connectable to a first networkserver and at least one further network server in a server pool. Thecontroller comprises a receiver, a transmitter, and a processing unit,wherein the receiver is adapted to receive a message from a mobiledevice to the first network server. The message comprises a selectedservice point, which is uniquely allocated to the first network server.The processing unit is adapted to apply a routing algorithm to theselected service point. The routing algorithm reveals the first networkserver from an analysis of the selected service point by utilizing atable. The table comprises service points allocated uniquely to thenetwork servers in the server pool. In the table, at least one of thenetwork servers has allocated at least two service points and one of theservice points in the table is the selected service point identifyingthe first network server. The transmitter is adapted to send the messageto the first network server.

[0038] The present invention also concerns computer programs, each ofthe computer programs being loadable into a processing unit of acorresponding device. The computer programs comprise portions ofsoftware codes in order to implement the method as described above whenoperated by the corresponding device. The computer programs can bestored on computer readable media. A computer-readable medium can be apermanent or rewritable memory within a device or located externally.The computer programs can be also transferred to the devices for examplevia a cable or a wireless link as a sequence of signals.

[0039] A computer program is loadable into a processing unit of anetwork server in a server pool of a mobile communication system. Thenetwork server is connectable to a controller of an access network. Thenetwork server has allocated at least two service points that uniquelyidentify the network server in the server pool. The computer programcomprises code adapted to process a request for an assignment of atemporary identity for a mobile device, to assign the temporary identityand to include one selected service point into the temporary identity.The selected service point is selected from the two or more servicepoints allocated to the network server. The computer program furthercomprises code to initiate a transmission of the assigned temporaryidentity to the mobile device.

[0040] A computer program is loadable into a processing unit of acontroller of an access network of a mobile communication system. Thecontroller is connectable to a first network server and at least onefurther network server in a server pool. The computer program comprisescode adapted to apply a routing algorithm to a selected service pointincluded in a message from a mobile device to the first network server.The selected service point is uniquely allocated to the first networkserver and the routing algorithm reveals the first network server froman analysis of the selected service point by utilizing a tablecomprising service points allocated uniquely to the network servers inthe server pool. In the table, at least one of the network servers hasallocated at least two service points and one of the service points inthe table is the selected service point identifying the first networkserver. The computer program comprises code adapted to initiate asending of the message to the first network server.

[0041] In the following, detailed embodiments of the present inventionshall be described in order to give the skilled person a full andcomplete understanding. However, these embodiments are illustrative andnot intended to be limiting, as the scope of the invention is definedonly by the appended claims.

BRIEF DESCRIPTION OF THE DRAWINGS

[0042]FIG. 1a shows a flow-chart diagram of a first embodiment of theproposed method;

[0043]FIG. 1b shows processes and messages by devices adapted to performthe first embodiment of the proposed method;

[0044]FIG. 2a shows a structure of a temporary identity according toprior art;

[0045]FIG. 2b shows a structure of a temporary identity with numberblock for server identifiers for use in a server pool according to priorart;

[0046]FIG. 2c shows a structure of a temporary identity with numberblock for service points for use in a server pool according to thepresent invention;

[0047]FIG. 3a shows a table for illustrating the availability oftemporary identities in a server pool according to prior art wherein thetemporary identities are assigned on a per network server base;

[0048]FIG. 3b shows a table for illustrating the availability oftemporary identities in a server pool according to the present inventionwherein the temporary identities are assigned on a per network serverbase;

[0049]FIG. 4a shows a table for illustrating the availability oftemporary identities in a server pool according to prior art wherein thetemporary identities are assigned on a per LA/RA base;

[0050]FIG. 4b shows a table for illustrating the availability oftemporary identities in a server pool according to the present inventionwherein the temporary identities are assigned on a per LA/RA base;

[0051]FIG. 5 shows a flow of tables indicating an allocation of servicepoints to network servers in the server pool for different states of theserver pool;

[0052]FIG. 6 shows a first example for a mobile communication systemcomprising network servers of a server pool, controllers of an accessnetwork, a mobile device, and connections for exchanging messagesbetween the individual devices;

[0053]FIG. 7a shows a second example of a mobile communication systemadapted to assign temporary identities on a per network server baseaccording to the present invention;

[0054]FIG. 7b shows a third example of a mobile communication systemadapted to assign temporary identities on a per LA/RA base according tothe present invention.

DETAILED DESCRIPTION OF THE INVENTION

[0055]FIG. 1a shows a flow chart diagram of a first embodiment of theproposed method and FIG. 1b shows an example of messages and processesexecuted by devices for carrying out the proposed method according tothe flow-chart diagram in FIG. 1a. Depending on the implementation orcase, it may be advantageous to integrate additional processes ormessages like a confirmation of a process or message before the nextprocess or message, respectively, is executed in order to ensure thatthe previous process or message, respectively, has been carried outcorrectly or just to acknowledge the correct transmission of a message.

[0056] The proposed method starts with a configuration of the serverpool CNSP wherein service points are defined S100 and allocated S110.According to the present example, the server pool CNSP comprises a firstnetwork server MSC1 and a further network server MSC2. Both networkservers MSC1;MSC2 in this example are of the same type with the typebeing either MSC or SGSN. First of all, the service points in the serverpool CNSP are defined S100: A number of service points may be defined bya number block reserved for the service points in a temporary identity.Also, the position of the number block within the temporary identity canbe defined. The service points are preferably defined S100 by theoperator of the mobile communication system who may consider the actualor future number of network servers in the pool for the definition ofthe number of service points. A requirement of the proposed method isthat the service points are defined S100 such that the number of servicepoints exceeds the number of network servers MSC1;MSC2 operating in theserver pool CNSP. In addition, the operator may also take into accountthe actual or future capacity or utilization of each of the networkservers MSC1;MSC2. Based on these considerations, the service points canbe defined S100 such that the number of service points exceeds thenumber of network servers MSC1;MSC2 slightly or significantly, e.g. inorder to achieve an easier processing or more flexible allocation of theservice points in the following processes, respectively. Alternatively,the number block in the temporary identity may be standardized such thatthe total bit length and the position is fixed. In this case, theservice points cannot be defined S100 by the operator.

[0057] The service points that are defined S100 can be allocated S110 tothe network servers MSC1;MSC2 in the server pool CNSP. Preferably, allservice points that are defined S100 are allocated S110 to achieve themaximum availability of temporary identities. However, the server poolCNSP may also be configured such that not all defined S100 servicepoints are allocated S110 for the expense of a reduced availability ofthe temporary identities. Not allocated service points may be allocatedS110 in a situation when a device like a network server or link failsand a spare device has to be activated for replacing or bypassing thefailed device. The allocation of not allocated service points to thespare device may be executed faster or easier than reallocating servicepoints that are allocated S110 to further network servers to the sparenetwork server. In any case, at least one of the network servers hasallocated at least two service points. Depending on the number of excessservice points, many service points may be allocated to many networkservers. As an example, a server pool having 3 network servers has 64service points according to a number block reserved for the serverpoints with a bit length of 6. A possible distribution of the 64 servicepoints to the three network servers may be 15 service points allocatedto the first network server, 15 service points allocated for the secondnetwork server and 34 service points for the third network server. Ingeneral, the service points can be allocated S110 homogeneously ornon-homogeneously, statically or dynamically to the network serversMSC1;MSC2 in the server pool CNSP. However, maximum flexibility andperformance is achieved for a dynamic allocation taking into accountindividual performances and loads of network servers MSC1;MSC2 and linksof the server pool CNSP. When the service points are allocated S110, aselection function may be provided to the network servers MSC1;MSC2. Theselection function can be used by the individual network server toselect a service point from the service points that are allocated S110to the individual network server. The selection function may considersupplementary information like the number of already assigned temporaryidentities for each service point that is allocated S110 to the networkserver. The selection function may be updated via O&M by the networkoperator after a reallocation and may be transmitted to the networkservers MSC1;MSC2 in the server pool CNSP. In addition, a routingalgorithm is provided to the controllers like BSCs or RNCs of the accessnetwork AN. When applied S190 to one of the allocated service points,the routing algorithm outputs the network server said service point isallocated S110 uniquely to. Preferably, the routing algorithm utilizes atable that reveals the relation between the service points that areallocated S110 and the network servers MSC1;MSC2 in the server poolCNSP, e.g. by correlating the allocated service points with theaddresses of the network servers MSC1;MSC2 in the server pool CNSP.After a reallocation of service points, the table is preferably updatedaccordingly.

[0058] A mobile device MS that registers S120 to the mobilecommunication system within the coverage of the access network AN of theserver pool CNSP, attaches first to a controller BSC2 of the accessnetwork AN. The controller BSC2 can be a BSC or RNC for a GSM or UMTSsystem, respectively, and may execute a selection S130 of one of thenetwork servers MSC1;MSC2 in the server pool CNSP. The controller BSC2may use a list that comprises the network servers MSC1;MSC2 in theserver pool CNSP. For the selection S130 of one of the network serversMSC1;MSC2, the controller BSC2 may take into account locationinformation of the mobile device MS, of the controller BSC2 or of one ormore of the network servers MSC1;MSC2 or may consider capacity orutilization information, e.g. indicating the capacity or load of a linkor at least one of the network servers MSC1;MSC2. According to FIG. 1,the controller BSC2 executes the selection S130 of the first networkserver MSC1. The selection S130 may include a transmission of a messageS135 to the selected network server informing the first network serverMSC1 about the selection S1130. The step where the mobile device MSregisters S120 may be replaced by a message that indicates a change ofthe location area of the mobile device MS to the first network serverMSC1 (location update not shown in FIG. 1). The selection S130 of one ofthe network servers MSC1;MSC2 in the server pool CNSP can be skipped inthe case of a location update. All following messages and processes fora location update can be processed accordingly to the followingdescription of FIG. 1.

[0059] One of the one or more service points allocated to the firstnetwork server MSC1 is selected S140, e.g. by the first network serverMSC1. The selected service point may be selected S140 based on theavailability of temporary identities. A temporary identity for themobile device is assigned S150 by the first network server MSC1 and theselected service point is included into the temporary identity. Thetemporary identity is transmitted S160 from the first network serverMSC1 to the mobile device MS, where the received temporary identity canbe stored.

[0060] The temporary identity can be used for routing a message S170from the mobile device MS to the first network server MSC1. The mobiledevice MS can retrieve the stored temporary identity and include thetemporary identity into a message S170 to be sent first to thecontroller BSC2 where the mobile device MS is attached to. The temporaryidentity may be detected by the controller BSC2 and the selected servicepoint can be extracted S180 by the controller BSC2 from the temporaryidentity. Alternatively, the mobile device MS may extract the selectedservice point from the temporary identity and send the selected servicepoint to the controller BSC2 for further routing of the message S170. Inthe alternative case, the controller does not have to extract theselected service point from the temporary identity (alternative case notshown in FIG. 1). For identifying the first network server MSC1associated with the selected service point, the routing algorithm can beapplied S190 by the controller BSC2 to the selected service point, e.g.it can be searched in a table revealing the correlation of the servicepoints allocated to the network servers in the server pool for an entryfor the selected service point. The entry can reveal an address of thefirst network server MSC1. From the knowledge of the address of thefirst network server MSC1, the message S170 or one or more furthermessages can be routed S200 to the first network server MSC1.

[0061] For one or more further messages from the mobile device MS to thefirst network server MSC1, the mobile device MS may include thetemporary identity or the selected service point into all of the furthermessages. The one or more further messages can hence be routed S200 tothe first network server MSC1 according to the proposed method asdescribed before. Alternatively, the first network server MSC1 or thecontroller BSC2 may assign a temporary identifier that may be used forrouting the further messages from the mobile device MS within theduration of a connection, e.g. for a voice call or data session. Byassigning a temporary identifier, a logical channel can be opened thatconcatenates following messages as it is commonly applied for example ina dialog. Typically a temporary identifier is a number block of lessdigits than the temporary identity thus saving transmission cost andprocessing effort. When the connection is released, the temporaryidentifier is invalidated and the mobile device MS can use the temporaryidentity for subsequent messages to the first network server MSC1.

[0062]FIG. 2a shows the structure of the temporary identity when theserver pool CNSP is not supported. The temporary identity is a numberblock of a certain bit length BL. Currently, the TMSI and P-TMSI arespecified to have a bit length BL of 32 bit. The structure contains thenumber block D having a bit length d of 2 bit reserved for the domainand the number block TN for the TMSI number having a bit length tn of 30bit.

[0063]FIG. 2b shows a structure of the temporary identity for use in aserver pool CNSP according to prior art. This temporary identity can becomposed of a number block D reserved for the domain, a number block SIDreserved for the server identifier, and a number block TN reserved forthe TMSI number.

[0064]FIG. 2c shows a preferred structure of the temporary identity foruse in a server pool CNSP according to the present invention. Thetemporary identity can be composed of a number block D reserved for thedomain, a number block SP reserved for the service point, and a numberblock TN reserved for the TMSI number. The bit length n of the numberblock SP reserved for service points or the bit length x of the numberblock TN reserved for TMSI numbers may be standardized or may be set bythe operator of the respective server tool. The corresponding appliesfor the relative position of the number blocks D;SP;TN within thetemporary identity. For compatibility reasons, the bit length BL of thetemporary identity for the server pool CNSP according to the presentinvention preferably equals the bit length BL of the temporary identityas shown in FIG. 2a. The corresponding applies for the bit length d andposition of the number block D for the domain. Note that only for thefollowing comparisons on the availability of temporary identities forthe server pool CNSP according to prior art and for the presentinvention, the bit length n of the number block SID reserved for theserver identifier and the bit length n of the number block SP reservedfor the service point have been chosen identically. The correspondingapplies to the bit length x for the number block TN reserved for theTMSI number in FIG. 2b and FIG. 2c. Furthermore, the proposed method canbe applied to temporary identities comprising a number block for TMSIgeneration. However, a number block for TMSI generation is notconsidered in the following descriptions.

[0065] In FIGS. 3a and 3 b, the availabilities of temporary identitiesfor a server pool CNSP according to prior art and according to thepresent invention, respectively, are evaluated for an assignment on aper network server base. For comparison, the temporary identities arestructured according to FIGS. 2b and 2 c, respectively, as explainedabove. Only the number block SID, the number block SP, and the numberblock TN have been considered in the following evaluation. The numberblock D has been not considered as this block is reserved for theindication of the domain.

[0066] The table in FIG. 3a shows in its first column the serveridentifiers (SID) which are available for a number block SID of a bitlength n of n bits. The number of service points which can be definedS100 by such a number block SID reserved for server identifiersaccording to FIG. 2b is 2^(n). In the present example, the server poolCNSP has three network servers, which are denoted by MSC1, MSC2, andMSC3 in the second column of the table. Only three of the serveridentifiers can be allocated to the network servers in the server poolCNSP. The number of not allocated server identifiers amounts to thedifference between the number of server identifiers (2^(n)) according tothe bit length n of the number block SID reserved for server identifiersand the number of network servers (N_(NS)) in the server pool, i.e.2^(n)-N_(NS) for the number of not allocated server identifiers. In thethird column, the maximum number of TMSI numbers (CSID) that can beassigned for each server identifier that is allocated in the server poolCNSP is shown. According to the bit length x of x=BL-n-d bit, themaximum number of TMSI numbers amounts to 2^(x) for each allocatedserver identifier. Due to the fact, that 2^(n)-N_(NS) serviceidentifiers are not allocated, the corresponding TMSI numbers areexcluded from being used for the assignment of temporary identities.These excluded TMSI numbers are indicated by “—” in the table. Thefollowing formula (1a-b) calculates the availability (N_(A)) oftemporary identities of a server pool CNSP according to prior art for anassignment on a per network server base without considering the numberblock D. $\begin{matrix}{N_{A} = {\sum\limits_{{SID} = 0}^{{SID} = N_{{NS}^{- 1}}}C_{SID}}} & \left( {1a} \right) \\{\quad {= {N_{NS}*2^{x}}}} & \left( {1b} \right)\end{matrix}$

[0067] Basically, the formula (1a) calculates the sum over the maximumnumber of TMSI numbers (C_(SP)) for server identifiers allocated tonetwork servers in the server pool CNSP. For the present example ofthree network servers, the result of 1b) is 3*2^(X). Obviously, the2^(n)-N_(NS) server identifiers, which are not allocated, do notcontribute to the sum. Only for the case that the number of networkservers equals the number of allocated server identifier, the maximumavailability of temporary identities in a server pool CNSP can beachieved, i.e. for N_(NS)=2^(n). However, the number of network serversin a server pool CNSP is preferably chosen according to the number ofsubscribers expected to be covered by the server pool CNSP. In mostcases, the number of network servers is less than 2^(n) at the expenseof a reduction of the availability of temporary identities.Alternatively, matching the number of network servers with the number ofservice points for achieving a maximum availability of temporaryidentities is often not recommended due to economic reasons. In summary,the determination of the availability of temporary identities by thenumber of network servers is not acceptable in many situations.

[0068]FIG. 3b shows a table for a corresponding situation as in FIG. 3amodified for a server pool CNSP according to the present invention.Obviously, the server identifiers (SID) are replaced by the servicepoints (SP) in FIG. 3b. In the first column, the 2^(n) service pointsthat are defined S100 by the number block SP of bit length n are shown.All 2 ^(n) service points are allocated S110 to the three networkservers MSC1, MSC2, and MSC3 in the server pool CNSP. The networkservers can have allocated multiple service points such that no servicepoint is left unused as shown in column two. The third column shows themaximum number of TMSI numbers that can be assigned for each allocatedservice point (C_(SP)). According to the present example of a bit lengthx of the number block reserved for the TMSI number, the available TMSInumbers per service point (C_(SP)) amounts to be 2^(X) for each servicepoint as in the previous example in FIG. 3a. In contrast to the table inFIG. 3a, the third column is completed in FIG. 3b, because all servicepoints are allocated S110. The following formula (2a-b) gives theavailability (N_(A)) of temporary identities that can be assigned for aserver pool CNSP on a per network server base according to the presentinvention without considering the number block D. $\begin{matrix}{N_{A} = {\sum\limits_{{SP} = 0}^{{SP} = {2^{n} - 1}}C_{SP}}} & \left( {2a} \right) \\{\quad {= {2^{n}*2^{x}}}} & \left( {2b} \right)\end{matrix}$

[0069] For a temporary identity as defined in FIG. 2c, the formulacalculates essentially the sum over all TMSI numbers per service point(C_(SP)) in column three for all service points given in column one. Dueto the fact that all service points are allocatable to any number ofnetwork servers in the server pool CNSP, the maximum availability oftemporary identities is achievable independent from the number ofnetwork servers in the server pool CNSP. In contrast to prior art, thenumber of network servers in the server pool CNSP can be freely chosen,e.g. the number of network servers can be matched to the number ofsubscribers expected for the server pool CNSP. In addition, the maximumavailability of temporary identities can always be achieved if allservice points that are defined S100 by a number block in the temporaryidentity are allocated S110 to the network servers in the server poolCNSP. According to the present invention, the number of network serversdoes not limit the availability of the temporary identities.

[0070] The table in FIG. 4a reflects a corresponding situation as thetable given in FIG. 3a with the difference that temporary identities arenow assigned on a per LA/RA base instead of a per network server base.In the present example there are three network servers MSC1, MSC2, andMSC3 and two location areas per network server, i.e. LA1 and LA2. Thelocation areas are indicated by LA_(ij) with i=1,2,3 being the numberfor the network server and j=1,2 being the number for the LA (differentindexing can mean the same location area). The number of LAs and theLA_(ig) given for each of the server identifiers that are allocated tothe network servers are given in column four of the table. Theavailability (NA) of temporary identities for a server pool CNSPaccording to prior art for an assignment on a per LA/RA base can becalculated according to following formula (3a-b) without considering thenumber block D. $\begin{matrix}{N_{A} = {\sum\limits_{{SID} = 0}^{{SID} = N_{{NS}^{- 1}}}{C_{SID}*L_{SID}}}} & \left( {3a} \right) \\{N_{A^{\prime}} = {N_{NS}*2^{x}*2}} & \left( {3b} \right)\end{matrix}$

[0071] (3 a) calculates the availability (N_(A)) for an arbitrary numberof network servers and an arbitrary number of location areas perallocated server identifier, (3 b) calculates the availability (N_(A′))for 2 location areas per allocated server identifier. For the presentexample of three network servers and two location areas, theavailability amounts to 3*2^(X)*2. The availability of temporaryidentities is increased for an assignment on a per LA/RA base comparedto the assignment on a per network server base just because of thetypically higher number of location areas. This can be easily seen fromcomparing FIG. 4a with FIG. 3a and formula (3a-b) with (1 a-b). However,also for the assignment on a per LA/RA base temporary identities areleft unused in the case that the number of network servers (N_(NS)) doesnot equal the number of server identifiers of 2^(n).

[0072]FIG. 4b shows a table for a corresponding situation as in FIG. 4amodified for a server pool CNSP according to the present invention.Obviously, the server identifiers (SID) are replaced by the servicepoints (SP) in FIG. 3b. All 2^(n) defined service points of column oneare allocated S110 to the three network servers MSC1, MSC2, and MSC3 incolumn two. In column three and four the number of TMSI numbers that canbe assigned for each allocated service point and the correspondingnumber of LAs with the LA_(ij), respectively, are given according to thepresent example. The following formula (4a-b) can be used to calculatethe availability of temporary identities accordingly without consideringthe number block D. $\begin{matrix}{N_{A} = {\sum\limits_{{SP} = 0}^{{SP} = {2^{n} - 1}}{C_{SP}*L_{SP}}}} & \left( {4a} \right) \\{N_{A^{\prime}} = {2^{n}*2^{x}*2}} & \left( {4b} \right)\end{matrix}$

[0073] Again, the availability of temporary identities is not limited bythe number of network servers in the server pool CNSP and the maximumavailability is achieved when all service points are allocated S110. Asit can be easily seen from a comparison of formula (4a-b) with formula(2a-b), the assignment on a per LA/RA base increases the availabilitycompared to the assignment on a per network server base due to thetypically higher number of LA/RAs.

[0074]FIG. 5 shows a flow of tables for illustrating modifications in aserver pool CNSP that can be executed according to the presentinvention. In the first column, the service points according to a numberblock of 3 bit are given translating into a total number of 2=8 servicepoints. The first table represents a first state T1 of the server poolCNSP comprising two network servers MSC1 and MSC2. All 8 service pointsare allocated S110 to the two network servers MSC1 and MSC2 giving amaximum availability of temporary identities as also indicated by thenumber of TMSI numbers in completed column three. The second tablereflects a second state T2 different from the first state T1. A newnetwork server MSC3 is introduced into the server pool CNSP by removingthe service point 7 from MSC2 and allocating the removed service point 7to MSC3. The third table reflects a third state T3 of the server poolCNSP different from the first and second states T1;T2. Service points 5and 6 are removed from MSC2 and MSC1, respectively, and are allocatedS110 to MSC3. In all depicted states T1;T2;T3, the maximum availabilityof temporary identities is achieved independent from the number ofnetwork servers in the server pool CNSP. Depending on the implementationor case, the allocation of the service points may be preferably executedservice point by service point in order to avoid congestion of links inthe core network as explained in detail later on.

[0075] It is also possible to decrease the number of service pointsallocated S110 to a network server, e.g. in order to reduce its load. Inthe third state T3, MSC3 has allocated S10 the service points 5, 6, and7. In a situation, when MSC3 reveals errors or needs to be upgraded, theload of MSC3 can be reduced by reducing the availability of temporaryidentities for MSC3. The reduction of the availability can be achievedby a reduction of the service points allocated to MSC3. When changingfrom state T3 to state T2 according to the present example, servicepoints 5 and 6 are removed from MSC3 thus reducing the load of MSC3 by67%. The maximum availability of temporary identities is maintained inthe server pool CNSP, when the removed service points 5 and 6 areallocated S110 to the further network servers in the server pool, i.e.to MSC2 and MSC1 according to the present example. Disconnecting anetwork server from the server pool CNSP can be achieved by removing allservice points from a network server, e.g. for disconnecting MSC3 thismay be achieved by starting from the third state T3 to the first stateT1 or from the second state T2 to the first state T1.

[0076]FIG. 5 reveals modifications of a server pool CNSP for anassignment of temporary identities on a per network server base.However, it is obvious from the previous explanations given especiallywith respect to FIGS. 3 and 4 to expand the tables and the correspondingexplanations of FIG. 5 for an assignment on a per LA/RA base.

[0077] Preferably, service points are gradually allocated S110 to anetwork server, e.g. service point by service point in order to avoidpeaks in the signalling load within the core network. For example if anew network server is added to a server pool CNSP and one or moreservice points are allocated, the new network server lacks of subscriberdata. When mobile devices register to the newly introduced networkserver, the network server requests subscriber data related to themobile device MS from the HLR. By allocating only one or a few servicepoints when adding the network server to the server pool CNSP, thefraction of mobile devices within the server pool CNSP that are servedby the newly introduced network server increases slowly thus avoidingcongestion of the core network signalling between the newly introducednetwork server and the HLR. Generally, such congestion can be avoided byallocating a limited number of service points per time period.

[0078]FIG. 6 shows an example for a communication system according tothe present invention. A server pool CNSP comprising two network serversMSC1;MSC2, an access network AN comprising three controllersBSC1;BSC2;BSC3 and a mobile device MS are depicted. A characteristicfeature of the server pool CNSP are the links C11;C12;C13;C21;C22;C23between the network servers MSC1;MSC2 and the controllersBSC1;BSC2;BSC3. Per definition of the server pool CNSP, each of thecontrollers BSC1, BSC2, BSC3 is connectable to each of the networkservers MSC1;MSC2 in the server pool CNSP thus enabling each mobiledevice to be served by any of the network servers MSC1;MSC2 in theserver pool CNSP. According to FIG. 6, the mobile device MS is attachedvia the wireless link Cmobile to the controller BSC2 of the accessnetwork AN. When the mobile device MS registers S120 to the server poolCNSP, the controller BSC2 performs a selection S130 of one of thenetwork servers MSC1;MSC2 in the server pool CNSP to control the mobiledevice MS. The selected network server, i.e. for example the firstnetwork server MSC1, proceeds such that one service point from the oneor more service points allocated S110 to the first network server MSC1is selected S140, a temporary identity for the mobile device MS isassigned S150, and the selected service point is included into theassigned temporary identity which is subsequently transmitted S160 vialink C12 and link Cmobile to the mobile device MS. For example during acall setup the mobile device MS sends a message S170 for the firstnetwork server MSC1 to the controller BSC2 via link Cmobile. The messageS170 comprises the temporary identity assigned to the mobile device MSby the first network server MSC1. The controller BSC2 detects thetemporary identity and the selected service point comprised in thetemporary identity is extracted S180 by the controller BSC2.Alternatively, the mobile device can extract the selected service pointfrom the temporary identity and can send selected service point to thecontroller BSC2 via link Cmobile. For identifying the first networkserver MSC1 associated with the selected service point, a routingalgorithm is applied S190 by the controller BSC2 to the selected servicepoint. The selected service point is analyzed, e.g. it is searched in atable accessible by the controller BSC2 for an entry for the selectedservice point. The detected entry reveals an address of the firstnetwork server MSC1. From the knowledge of the address of the firstrietwork server MSC1, the message S1 70 and optionally one or morefurther messages can be routed S200 by the controller BSC2 to the firstnetwork server MSC1 via link C12. If the first network server MSC1 isnot accessible e.g. due to a disturbance of the first network serverMSC1 or of the link C12 between the controller BSC2 and the firstnetwork server MSC1, the controller BSC2 may select one further networkserver MSC2 in the server pool CNSP for controlling the mobile deviceMS, e.g. via link Cmobile and link C22.

[0079]FIGS. 7a and 7 b show two further examples for a mobilecommunication system adapted to execute the method according to thepresent invention on a per network server base and a per LA/RA base,respectively. The mobile communication system comprises a core networkCN comprising a first server pool CNSP and a second server pool CNSP2.The first server pool CNSP comprises two network servers MSC1;MSC2, e.g.MSCs, and the second server pool CNSP2 comprises two network serversMSC3;MSC4, e.g. SGSNs. In addition, FIG. 7b depicts also a firstlocation/routing area LARA1 of the first server pool CNSP and a secondlocation/routing area LARA2 of the second server pool CNSP2. Corenetwork server pool service points for an assignment of temporaryidentities on a per network server base and location area service pointsfor an assignment of temporary identities on a per LA/RA base aredepicted in FIGS. 7a and 7 b, respectively. Two mobile devices MS;MS2controlled by the first network server MSC1 in the first server poolCNSP are shown in both figures.

[0080] In FIG. 7a, both mobile devices MS;MS2 are controlled by the samenetwork server MSC1, but the mobile devices MS;MS2 are assigned todifferent core network server pool service points. This means that bothmobile devices MS;MS2 can have the same domain and the same TMSI numbervalues in the temporary identity, even though the temporary identity TIaof the first mobile device MS is different from the temporary identityTl2 a of the second mobile device MS2 due to the different core networkserver pool service points.

[0081] In FIG. 7b, both mobile devices MS;MS2 are controlled by the samenetwork server MSC1, but the mobile devices MS;MS2 are assigned todifferent location area service points. This means that both mobiledevices MS;MS2 can have the same domain and the same TMSI number valuesin the temporary identity, even though the temporary identity TIb of thefirst mobile device MS is different from the temporary identity TIb ofthe second mobile device MS2 due to the different location area servicepoints.

[0082] The above embodiments admirably achieve the objects of theinvention. However, it will be appreciated that departures can be madeby those skilled in the art without departing from the scope of theinvention which is limited only by the claims.

1. A method for routing a message (S170) to a first network server (MSC1) in a server pool (CNSP) of a mobile communication system, the mobile communication system comprising a controller (BSC2) of an access network (AN) connectable to the first network server (MSC1) and at least one further network server (MSC2) in the server pool (CNSP), wherein service points are defined (S100) and one or more of the service points are allocated (S110) uniquely to each of the network servers (MSC1, MSC2) in the server pool (CNSP), at least one of the network servers (MSC1, MSC2) having allocated (S110) at least two of the service points, wherein a service point is selected (S140) from the one or more service points allocated to the first network server (MSC1), a temporary identity is assigned (S150) by the first network server (MSC1) to a mobile device (MS), the temporary identity including the selected service point, the temporary identity is transmitted (S160) to the mobile device (MS), a message (S170) from the mobile device (MS) to the first network server (MSC1) is routed (S200) to the first network server (MSC1) by extracting the selected service point from the temporary identity received by the mobile device (MS) and applying a routing algorithm to the selected service point, the routing algorithm revealing the first network server (MSC1) from an analysis of the selected service point.
 2. The method according to claim 1, wherein the routing algorithm is applied (S190) by the controller (BSC2) of the access network (AN).
 3. The method according to claim 1 or 2, wherein the routing algorithm utilizes a table which relates the allocated service points with the network servers (MSC1, MSC2) in the server pool (CNSP).
 4. The method according to any of the claims 1 to 3, wherein the temporary identity is included in the message (S170) from the mobile device (MS) and the controller (BSC2) extracts the selected service point from the temporary identity.
 5. The method according to any of the claims 1 to 3, wherein the mobile divice (MS) extracts the selected service point from the temporary identity and sends the selected service point to the controller (BSC2) for applying the routing algorithm.
 6. The method according to any of the claims 1 to 5, wherein a number of service points in the server pool is defined (S100) by selecting a bit length (n) of a number block (SP) reserved for the service points in the temporary identity.
 7. The method according to any of the claims 1 to 6, wherein the service points are re-allocatable to the network servers (MSC1,MSC2) in the server pool (CNSP).
 8. The method according to claim 7, wherein the service points are allocated (S110) depending on a load of at least one of the network servers (MS1,MSC2) in the server pool (CNSP).
 9. The method according to claim 7 or 8, wherein the service points are allocated (S110) depending on a load of a link between the controller (BSC2) of the access network (AN) and one of the network servers (MSC1,MSC2) in the server pool (CNSP).
 10. The method according to any of the claims 1 to 9, wherein the first network server (MSC1) selects the selected service point.
 11. The method according to any of the claims 1 to 10, wherein the temporary identity is assigned (S150) based on location information of the mobile device (MS).
 12. The method according to any of the claims 1 to 11, wherein the service points are core network server pool service points or location area service points.
 13. The method according to any of the claims 1 to 12, wherein the network servers (MSC1,MSC2) in the server pool (CNSP) are mobile service switching centers or serving general packet radio service support nodes.
 14. The method according to any of the claims 1 to 13, wherein the temporary identity is a temporary mobile subscriber identity or a packet temporary mobile subscriber identity.
 15. The method according to any of the claims 1 to 14, wherein the controller (BSC2) of the access network (AN) is a base station controller or a radio network controller.
 16. The method according to any of the claims 1 to 15, wherein the mobile communication system is a global system for mobile communication or a universal mobile telecommunication system.
 17. A network server (MSC 1) in a server pool (CNSP) of a mobile communication system, the network server (MSC I) being connectable to a controller (BSC2) of an access network (AN), the network server (MSC1) having allocated (S110) at least two service points that uniquely identify the network server (MSC1) in the server pool (CNSP) and comprising a receiver, a transmitter, and a processing unit, wherein the receiver is adapted to receive a request for an assignment of a temporary identity for a mobile device (MS), the processing unit is adapted to assign the temporary identity and to include one selected service point being selected from the two or more service points allocated to the network server (MSC1) into the temporary identity, and the transmitter is adapted to send the assigned temporary identity to the mobile device (MS).
 18. The network server (MSC1) according to claim 17, wherein the network server (MSC1) is adapted to perform steps in a method according to any of the claims 1 to
 16. 19. A controller (BSC2) of an access network (AN) of a mobile communication system, the controller (BSC2) being connectable to a first network server (MSC1) and at least one further network server (MSC2) in a server pool (CNSP), the controller (BSC2) comprising a receiver, a transmitter, and a processing unit, wherein the receiver is adapted to receive a message (S170) from a mobile device (MS) to the first network server (MSC1), the message (S170) comprising a selected service point which is uniquely allocated (S110) to the first network server (MSC1), the processing unit is adapted to apply a routing algorithm to the selected service point, the routing algorithm revealing the first network server (MSC1) from an analysis of the selected service point by utilizing a table comprising service points allocated uniquely to the network servers (MSC1,MSC2) in the server pool (CNSP), in the table at least one of the network servers (MSC1,MSC2) having allocated at least two service points and one of the service points in the table being the selected service point identifying the first network server (MSC1), and the transmitter is adapted to send the message (S170) to the first network server (MSC1).
 20. The controller (BSC2) according to claim 19, wherein the controller (BSC2) is adapted to perform steps in a method according to any of the claims 1 to
 16. 21. A computer program loadable into a processing unit of a network server (MSC1) in a server pool (CNSP) of a mobile communication system, the network server (MSC1) being connectable to a controller (BSC2) of an access network (AN), the network server (MSC1) having allocated (S110) at least two service points that uniquely identify the network server (MSC1) in the server pool (CNSP), wherein the computer program comprises code adapted to process a request for an assignment of a temporary identity for a mobile device (MS), to assign the temporary identity and to include one selected service point being selected from the two or more service points allocated to the network server (MSC1) into the temporary identity, and to initiate a transmission of the assigned temporary identity to the mobile device (MS).
 22. A computer program loadable into a processing unit of a controller (BSC2) of an access network (AN) of a mobile communication system, the controller (BSC2) being connectable to a first network server (MSC1) and at least one further network server (MSC2) in a server pool (CNSP), wherein the computer program comprises code adapted to apply a routing algorithm to a selected service point included in a message (S170) from a mobile device (MS) to the first network server (MSC1) with the selected service point being uniquely allocated (S110) to the first network server (MSC1) and the routing algorithm revealing the first network server (MSC1) from an analysis of the selected service point by utilizing a table comprising service points allocated uniquely to the network servers (MSC1,MSC2) in the server pool (CNSP), in the table at least one of the network servers (MSC1,MSC2) having allocated at least two service points and one of the service points in the table being the selected service point identifying the first network server (MSC1), and the computer program comprises code adapted to initiate a sending of the message (S170) to the first network server (MSC1).
 23. The computer program according to claim 21 or 22 adapted to perform steps of a method according to any of the claims 1 to
 16. 